import java.io.File;
import java.io.IOException;

/**
 * @Author: Lenovo
 * @Date: 2024/6/8 14:15
 * @description:
 */
public class TestFile {
    /**
     * 打印文件信息
     * @param file 文件的名称
     * @param level 层次数(实际就是：第几次递归调用)
     */
    public static void PrintFile(File file,int level){
        for(int i=0;i<level;i++){
            System.out.print('-');
        }
        //输出文件名
        System.out.println(file.getName());
        if(file.isDirectory()){
            File[]files=file.listFiles();
            for (File temp:files){
                PrintFile(temp,level+1);
            }
        }
    }
    public static void main(String[] args) throws IOException {
        /*File f1=new File("d:/电影/华语/大陆/哪吒传奇.mp4");
        File f2=new File("d:/电影/华语/大陆/战狼.mp4");
        File f3=new File("d:/电影/华语/大陆/战狼2.mp4");
        f1.createNewFile();
        f2.createNewFile();
        f3.createNewFile();*/
        /*File f4=new File("d:/电影/好莱坞/速度与激情8.mp4");
        boolean flag=f4.mkdirs();
        System.out.println(flag);*/
        File f=new File("d:/电影");
        PrintFile(f,0);
    }
    public static void main5(String[] args) {
        File f3=new File("d:/电影/华语/大陆");
        boolean flag=f3.mkdirs();//目录结构中有一个不存在也没关系；创建整个目录树
        System.out.println(flag);//创建成功
    }
    public static void main4(String[] args)throws IOException {
        //使用 mkdir 创建目录
        File f=new File("d:/c.txt");
        f.createNewFile();
        f.delete();
        File f2=new File("d:/电影/华语/大陆");
        boolean flag=f2.mkdir();//目录结构中有一个不存在，则不会创建整个目录树
        System.out.println(flag);//创建失败
    }
    public static void main3(String[] args) throws IOException {
        File f=new File("a.txt");//相对路径，默认放在uesr.dir目录下
        f.createNewFile();//创建文件
        System.out.println("File f是否存在:"+f.exists());
        System.out.println("File f是否是目录:"+f.isDirectory());
        System.out.println("File f是否是文件:"+f.isFile());
        System.out.println("File f的最后修改时间"+f.lastModified());
        System.out.println("FIle f的大小:"+f.length());
        System.out.println("File f的文件名:"+f.getName());
        System.out.println("File f的文件目录路径"+f.getPath());
    }
    public static void main2(String[] args) throws IOException {
        File f2=new File("d:/b.txt");//绝对路径
        f2.createNewFile();
        f2.delete();
    }
    public static void main1(String[] args)throws IOException {
        System.out.println(System.getProperty("user.dir"));//当前文件所在的位置
        File f=new File("a.txt");//相对路径，默认放在uesr.dir目录下
        f.createNewFile();//创建文件

    }
}
